iT邦幫忙

0

Cyber security -6 Module4-2 IDS

  • 分享至 

  • xImage
  •  

使用檢測工具進行安全監控

Security monitoring with detection tools
入侵檢測系統 (IDS) 與其相關技術,包括數據來源、偵測方法、終端設備與網路流量的監控,以及 IDS 的記錄與警報機制

數據來源

  • 偵測需要依賴數據,這些數據可來自多種設備的日誌Logs
  • 日誌記錄系統事件,而遙測Telemetry則描述數據本身,如網路封包截取。
項目 定義 舉例 功能比較
Logs 記錄系統中發生的事件 系統錯誤代碼、登入失敗 描述事件
Telemetry 收集與傳輸數據,描述數據本身 Packet Captures (封包捕捉) 描述數據性質

Endpoint telemetry

  • 指的是從終端設備(例如電腦、手機、伺服器等)collection 收集資料並進行transmission傳輸的過程,用以供進一步的檢測或分析analysis。
  • 端點是進入網路的入口,因此它們成為惡意行為者尋求未經授權存取系統的主要目標。
  • 這種數據通常包含設備的系統活動、事件數據、行為指標,以及其他與安全相關的資訊。

入侵檢測系統 (IDS) 的定義

  • IDS 是用於監控活動monitors activity and alerts 並針對可能的入侵發送警報的應用程式。
  • IDS 可以監控終端設備、網路,以及系統的其他部分。

H/N-Based IDS type

主題 定義/功能 範例 優缺點與比較
Host-Based IDS (HIDS) 安裝在單一主機上,監測該主機活動監控進出流量外,還能監控檔案系統、系統資源使用情況、用戶活動等功能。偵測出威脅後,傳送日誌和通知警報 HIDS會記錄並發出警報通知未授權應用程式的安裝。 細節多但範傳送日誌和通知警報圍有限。無法同時監控多設備間的活動。無法查看整個網路的活動。
Network-based IDS (NIDS) 監控網路中的流量,部署於網路節點取得全網路視野。 網路流量監控。類似於封包攔截器packet sniffers 範圍廣,但細節相對不足。只關注網路層面,無法深入知道單個設備內的資訊

HIDS和NIDS的結合使用能提供多層次的入侵檢測和響應方法,透過監控網路活動和各個連接主機的狀態,提供環境中活動的全面視角。

The flow option

A security analyst creates a Suricata signature to identify and detect security threats based on the direction of network traffic. Which of the following rule options should they use?They should use flow. The flow option matches the direction of network traffic flow.

IDS detection methods/techniques

  • Signature-Based & Anomaly-Based
偵測方法 定義 優點 缺點
特徵基礎分析 (Signature-Based) 根據已知的入侵特徵(如特定資料或模式)進行比對偵測。 - 偵測已知威脅效率高- 假陽性率低Low rate of false positives。 - Inability to detect unknown threats無法偵測未知威脅zero-day- 攻擊者可修改行為迴避偵測Signatures can be evaded-需定期更新資料庫Signatures require updates。
異常基礎分析 (Anomaly-Based) 偵測行為是否偏離正常基準(基準需透過訓練期收集資料建立)。 - 可偵測未知或新型態威脅。 - High rate of false positives假陽性率高,非惡意行為可能被標註- Pre-existing compromise若惡意行為出現在訓練期,恐導致誤判為正常行為。

Signature analysis/ Signature-Based

所謂「簽章」,在此指的是入侵檢測系統(例如 IDS/HIDS/NIDS)所使用的模式匹配規則。這些簽章是依據 IoCs 設計的,當偵測到符合某些特定 IoCs 的行為時,系統就會發出警報。因此,根據高價值的 IoCs 設計針對性的簽章,可以幫助安全系統更加精準地攔截攻擊。

Indicators of Compromise (IoCs):

IoCs 是網絡安全中用來檢測威脅活動的重要元素,可包括 IP 地址、網域名、檔案雜湊值、可執行檔案名稱等。這些都是與攻擊行為相關的線索,用於識別可能的惡意活動。

SIEM

  • IDS 日誌記錄偵測設備監控到的資訊,這些日誌可存儲於中央化的記錄庫如 SIEM。
    在生成警報之前,必須先記錄logged活動。IDS技術會將其監控的設備、系統和網路資訊記錄為IDS日誌,然後將這些日誌傳送、儲存並在集中式日誌存儲庫 centralized log repository(如SIEM)中進行分析

Components of a detection signature

  • 網路入侵檢測系統通常被簡稱為縮寫 N-I-D-S,並讀作 NIDS。
  • NIDS 由三個組成部分構成:一個行動action、一個標頭header和規則選項rule option。
    偵測簽名的組成要素
元件 說明 例子
動作Action 定義規則匹配後執行什麼行動。 警告 (alert)、忽略 (pass)、拒絕 (reject)
標頭Header 定義protocols、IP與port來源和目的與網路流量direction。 TCP, 源IP: 10.120.170.17, 源端口: 任意, 目標IP: 133.113.202.181, 目標端口: 80
規則選項Rule Options 客製化簽名以提供細化的檢測條件,如封包內容或惡意載荷檢測。 (msg: "This is a message."; sid: 簽名唯一識別碼; rev: 簽名版本號;)

rule option

  • msg 是用來提供警報文字內容,
  • sid 表示簽名 ID,簽名識別碼,每個規則都會被指派一個獨立的簽名 ID 作為唯一的標識,以便於管理與追蹤。
  • rev 代表版本,每次簽名更新時,版本號會改變。

Suricata

  • 定義:一個開源的基於簽名(signature-based)入侵檢測系統(IDS)
  • 特點:
    • 支援多種網絡協議與流量類型。
    • 可使用現有的簽名模板,或撰寫自定義規則。
    • 能產生警報來偵測並攔截有害流量。
  • 文件結構與初步操作:
    • 更換目錄 (cd 指令):進入 /etc/suricata 目錄(Suricata的配置文件集中存放於此處)。
    • 列出文件內容 (ls 指令):檢視文件與文件夾列表,特別是 rules 文件夾,此處存放系統規定的簽名檔規則。
    • 查看自定義規則文件 (less 指令):使用 less 指令檢視 custom.rules,並觀察內容。初步可以看到註解(#),以及頭部與規則定義等內容,便於了解規則的功能與作用。

Suricata 的日誌格式和類型

Suricata format type - EVE JSON

  • EVE:Extensible Event Format
  • JSON:JavaScript Object Notation
  • 特性:鍵值對的結構,簡化了在日誌檔案中搜索和提取數據的過程。

Suricata log 2 types

項目 描述 範例
Alert Logs 安全調查相關,記錄觸發警報的細節,包括 IP、協議等資料。 - Type:「Alert」 - IP 地址、協議(Protocol)、特徵碼訊息(例如:檢測到惡意軟件)
Network Telemetry Logs 記錄網絡流量活動,未必與安全問題直接相關,幫助構建調查整體故事。 - Type:「HTTP」 - 訪問的網站、User Agent(例如 Mozilla 5.0) - 返回的內容種類(例如 HTML 文本)幫助構建調查時的整體故事。

network telemetry data

They are using network telemetry data. Network telemetry refers to the collection and transmission of network data for analysis, such as HTTP traffic.

  • 在HTTP 網絡遙測日誌中「User Agent」代表用於訪問網站的軟體名稱

應用場景

  • 通過詳細日誌分析,協助網絡調查,理解並建構完整的安全事件背景。
  • 在學習中,實際操作分析這些日誌,幫助理解 Suricata 的日誌特性與使用。

Overview of Suricata

主題 資訊與特性
功能類型 - IDS:監控與檢測網絡異常- IPS:阻止惡意流量,需啟用設定- NSM:儲存及分析流量日誌
規則定義 - 動作 (Action):如 alert, drop, 等- 標頭 (Header):描述流量的 IP 與 Port- 規則選項:增加靈活性與自訂能力
規則優點 - 能快速檢測網絡威脅- 能增加背景效能分析
主要配置檔案 - 配置檔名:suricata.yaml- 用於調整設定來符合環境需求
記錄檔格式 - eve.json:詳細格式,適用進階分析與 SIEM - fast.log:簡單格式,僅適合基礎記錄
建議 - 建議自訂規則來減少錯誤報警- 測試與調教規則讓其適用於不同組織

header

  • alert(警報):對符合條件的流量發出警示
  • drop(丟棄):阻斷並丟棄流量
  • pass(放行):允許流量通過
  • reject(拒絕):主動拒絕連線

Suricata features

  • 三種主要方式運作:入侵偵測系統(IDS)、入侵防禦系統(IPS)以及網絡安全監測(NSM)。
  • 其主要功能包括監控網絡流量、檢測並阻止惡意活動,以及記錄網絡數據以協助取證與簽名測試。
功能 定義 用途 優點 缺點
入侵偵測系統 (IDS) 監控網絡或主機流量,檢測可疑活動並警告。 - 網絡模式: 檢測整體網絡活動 - 主機模式: 檢測單一設備活動 - 被動監控網絡流量無中斷 - 可分析過往可疑行為 無法主動阻止威脅行動
入侵防禦系統 (IPS) 可檢測並阻止網絡威脅,需啟用額外 IPS 模式配置。 阻止不良網絡行動,例如封鎖攻擊流量 - 主動獲得即時防禦效果 配置複雜,可能影響網速
網絡安全監測 (NSM) 生成並記錄數據包或網絡日誌,用以取證及風險分析。 - 分析實時數據流量 - 測試網絡簽名 - 保存現場數據包 - 幫助於長期取證及事件分析 - 支持完整或條件保存資料包的功能 資料存儲空間需求大,需要現場流量分析工具支持

Configuration file

配置檔案是在部署檢測工具並開始監控系統和網絡之前,需要適當配置其設置的文件。配置檔案configuration file 允許自定義入侵檢測系統(IDS)如何與環境互動。Suricata的配置檔案為suricata.yaml,使用YAML文件格式。

Log files

Suricata 生成兩個日誌文件:eve.json 和 fast.log。

  • eve.json 是標準日誌文件,包含有關事件和警報的詳細信息,以 JSON 格式存儲,適合進行深入分析;而
  • fast.log 則記錄基本的警報信息,如 IP 地址和端口,不適合用於事件響應或威脅獵捕。
  • 主要區別在於細節的記錄程度,fast.log 只有基本信息,而 eve.json 則包含更多詳細內容。

指令解釋

  • -r 指定輸入的網路流量檔案 (sample.pcap)、

  • -S 指定自定義規則檔案 (custom.rules)以及

  • -k 禁用所有的校驗和檢查。
    sudo suricata -r sample.pcap -S custom.rules -k none

  • 使用jq命令將原本可能難以理解或雜亂無章的 JSON 數據
    jq . /var/log/suricata/eve.json | less

  • 使用jq command 從 eve.json 檔案中提取特定事件資料:
    jq -c "[.timestamp,.flow_id,.alert.signature,.proto,.dest_ip]" /var/log/suricata/eve.json

    • 所選字段為時間戳(.timestamp),流 ID(.flow_id),警報簽名或消息(.alert.signature),協議(.proto)和目標 IP 地址(.dest_ip)。
  • jq 命令顯示來自 eve.json 檔案的特定 flow_id 相關事件日誌,flow_id 的值為 16 位數字,需用前面查詢返回的 flow_id 值替換 X。
    jq "select(.flow_id==X)" /var/log/suricata/eve.json


圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言